home *** CD-ROM | disk | FTP | other *** search
/ PC Media 22 / PC MEDIA CD22.iso / share / prog / spm220e / testmodp.pas < prev    next >
Pascal/Delphi Source File  |  1995-09-01  |  2KB  |  69 lines

  1. {
  2. ╔═════════════════════════════════════════════════════════════════════════════╗
  3. ║ NAME      : TESTMODP.PAS                                                    ║
  4. ║ FUNCTION  : A simple demo. of how to use MODEM.PAS...                       ║
  5. ║ COPYRIGHT : HETRU Fabrice 1991-1995.                                        ║
  6. ╚═════════════════════════════════════════════════════════════════════════════╝
  7. }
  8.  
  9.  
  10.  
  11. USES Crt,Dos,StarIntf,Modem;
  12.  
  13.  
  14.  
  15. VAR
  16.   Key,car    : CHAR    ;
  17.   InBuffSz,
  18.   OutBuffSz,
  19.   fmt,Nb,NbR : WORD    ;
  20.   Result     : BYTE    ;
  21.  
  22.  
  23. BEGIN
  24.   WRITELN('HAYES modem testing using the PASCAL interfacing.');
  25.  
  26.   (* Set this variable to 0 for COM1:...to 7 for COM8: *)
  27.   CommPort := 0;
  28.  
  29.   IF type_driver<>0 THEN
  30.   BEGIN
  31.     CheckBreak := FALSE;
  32.     Init_status(fmt);
  33.     Result := Init_Port('7','1','N',2400,InBuffSz,OutBuffSz);
  34.     Result := Open_Port;
  35.     Show_CorF := TRUE;
  36.     GetIntVec($1C,Int1CSave);
  37.     SetIntVec($1C,Addr(Check_HModem_State));
  38.     WRITELN('<I>nitialize  <C>onnect  <H>ang-off  Q==>QUIT');
  39.     REPEAT
  40.       Key := ' ';
  41.       IF KeyPressed THEN
  42.       BEGIN
  43.         Key := UpCase(ReadKey);
  44.         IF (Key=#0) AND KeyPressed THEN Key := ReadKey;
  45.         CASE Key OF
  46.           'I': CmdeToModem(InitMod,'');
  47.           'C': CmdeToModem(Connect,'');
  48.           'H': CmdeToModem(Raccroch,'');
  49.           #59: WRITELN('<I>nitialize  <C>onnect  <H>ang-off  Q==>QUIT');
  50.         END;
  51.       END;
  52.       IF CheckBufferIn(Nb) THEN
  53.       BEGIN
  54.         Result := ReadSerie(car,1,NbR);
  55.         IF Result=0 THEN WRITE(car);
  56.       END
  57.     UNTIL Key='Q';
  58.     IF MEM[$40:$49] IN [2,3,7] THEN
  59.        MEMW[seg_ecran:158] := $0720
  60.     ELSE MEMW[seg_ecran:76] := $0720;
  61.     SetIntVec($1C,Int1CSave);
  62.     Result := Reset_Init_status(fmt);
  63.     IF WhereX>1 THEN WRITELN;
  64.     IF Close_Port(TRUE)<>0 THEN WRITELN('Port NOT closed !');
  65.     WRITELN('Test has terminated.');
  66.   END
  67.   ELSE WRITELN('Please, load STARCOMM.EXE...');
  68. END.
  69.